/**
 * \file            lwevt_opt.h
 * \brief           LwEVT options
 */

#ifndef LWEVT_HDR_OPT_H
#define LWEVT_HDR_OPT_H

/* Uncomment to ignore user options (or set macro in compiler flags) */
/* #define LWEVT_IGNORE_USER_OPTS */

/* Include application options */

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

/**
 * \defgroup        LWEVT_OPT Configuration
 * \brief           Default configuration setup
 * \{
 */

/**
 * \brief           Maximum number of event listeners that can receive info on event dispatch
 * 
 * It defines size of array for function pointers
 */
#ifndef LWEVT_CFG_MAX_EVT_LISTENERS
#define LWEVT_CFG_MAX_EVT_LISTENERS             8
#endif

/**
 * \brief           Enables `1` or disables `0` creation of default event handle
 * 
 * When enabled, user can use \ref lwevt_get_handle and \ref lwevt_dispatch functions
 * to operate on defualt handle.
 * 
 * When disabled, user must create event handle before every dispatch,
 * and is only able to use \ref lwevt_dispatch_ex function
 */
#ifndef LWEVT_CFG_ENABLE_DEFAULT_HANDLE
#define LWEVT_CFG_ENABLE_DEFAULT_HANDLE         1
#endif

/**
 * \}
 */

#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* LWEVT_HDR_OPT_H */
